# Q. What is this file?
# A. This file contains options which allow you to configure your multiworld experience while allowing
#    others to play how they want as well.
#
# Q. How do I use it?
# A. The options in this file are weighted. This means the higher number you assign to a value, the
#    more chances you have for that option to be chosen. For example, an option like this:
#
#    map_shuffle:
#      on: 5
#      off: 15
#
#    Means you have 5 chances for map shuffle to occur, and 15 chances for map shuffle to be turned
#    off.
#
# Q. I've never seen a file like this before. What characters am I allowed to use?
# A. This is a .yaml file. You are allowed to use most characters.
#    To test if your yaml is valid or not, you can use this website:
#        http://www.yamllint.com/
#    You can also verify that your Archipelago options are valid at this site:
#        https://archipelago.gg/check

# Your name in-game, limited to 16 characters.
#     {player} will be replaced with the player's slot number.
#     {PLAYER} will be replaced with the player's slot number, if that slot number is greater than 1.
#     {number} will be replaced with the counter value of the name.
#     {NUMBER} will be replaced with the counter value of the name, if the counter value is greater than 1.
name: Player{number}

# Used to describe your yaml. Useful if you have multiple files.
description: Default Baldur's Gate 3 Template

game: Baldur's Gate 3
requires:
  version: 0.6.7 # Version of Archipelago required for this yaml to work as expected.
  game:
    Baldur's Gate 3: 0.6.3 # Version of the world required for this yaml to work as expected.

Baldur's Gate 3:
  ################
  # Game Options #
  ################
  progression_balancing:
    # A system that can move progression earlier, to try and prevent the player from getting stuck and bored early.
    # 
    # A lower setting means more getting stuck. A higher setting means less getting stuck.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 99
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-99: 0 # random value between 0 and 99
    disabled: 0 # equivalent to 0
    normal: 50 # equivalent to 50
    extreme: 0 # equivalent to 99

  accessibility:
    # Set rules for reachability of your items/locations.
    # 
    # **Full:** ensure everything can be reached and acquired.
    # 
    # **Minimal:** ensure what is needed to reach your goal can be acquired.
    full: 50
    minimal: 0

  goal:
    # (Dev note: Progression Balancing is recommended to be 0)
    # Determines what location counts as victory.
    # These goals also determine how many level ups are placed in the pool-
    # Rescue Halsin: Level Cap 5 - goal is to rescue Halsin and return him safely to the Grove.
    # Kill Inquisitor Wwargaz: Level Cap 8 - goal is to kill Inquisitor Wwargaz in the Creche.
    #     The space laser does not count.
    # Act 1 user defined fights: Level Cap 8 - goal is to defeat selected bosses (see UserDefinedFights).
    # Kill Myrkul: Level Cap 10 - goal is to kill the Avatar of Myrkul at the end of Act 2.
    # Act 2 user defined fights: Level Cap 10 - goal is to defeat selected bosses (see UserDefinedFights).
    rescue_halsin: 50
    kill_inquisitor_wwargaz: 0
    act1_user_defined_fights: 0
    kill_myrkul: 0
    act2_user_defined_fights: 0

  user_defined_fights:
    # If using a User Defined Fights goal, select which fights are required to complete the goal.
    # Act 2 fights require the act2_user_defined_fights goal to be selected.
    ['Malus Thorm', 'Spider Queen', 'Spectator', 'Auntie Ethel', 'Thisobald Thorm', 'Yurgir', 'Balthazar', 'Shambling Mound', 'Myrkul', 'Grym', 'Gerringothe Thorm', 'Nere', 'Cursed Kuo-Toa Chief', "Ch'r'ai W'wargaz", "Ch'r'ai Tska'an", 'Bulette']

  killsanity:
    # Whether kills of individual creatures should be locations.
    # Kills do _not_ count if they are done by falling damage or by being thrown into a chasm.
    # 
    # All_Nonmissible_hostiles: The intent was all monsters that are either default or story-forced hostile, and are not likely to be missed by advancing plot.
    # Include_Missible_Bosses: Includes bosses that could be bypassed or missed. Failing to kill one could softlock the player. Save often.
    #     Examples: Nere, All the Thorms, later waves of Thaniel's summons.
    # 
    # Nonmissable Hostiles Location count - Halsin: ~140, Wwargaz: ~250
    'off': 50
    all_nonmissable_hostiles: 0

  questsanity:
    # Whether quest updates should be locations.
    # Some locations may be buggy or missable- please tell the BG3 channel if any quest doesn't complete that you think should've.
    # Due to the nature of the branching of BG3 paths, many quests had to have choices as to what options were viable.
    # Currently the only option is "Most Content" - skill checks are not expected to be passed _unless_ future content depends on it.
    # 
    # Most Content Location count - Halsin: ~200, Wwargaz: ~300
    'off': 0
    most_content: 50

  containersanity:
    # Whether opening containers should be locations. Currently unimplemented and exists only for testing.
    # Even if it was, don't do this.
    'off': 50
    no_really_dont_do_this: 0
    i_suppose_if_you_insist: 0

  deathlink:
    # If true, when a player dies, all players receive an item that kills them. Currently in testing.
    'false': 50
    'true': 0

  sync_method:
    # Determines how AP items will be delivered into BG3. All options will still have the AP Sync scroll, it just will be a No-op if not needed.
    # Scroll_Tav - Items will only be generated when the scroll is cast, and placed in Tav's inventory.
    # Any_action_Tav - Items will be generated when ANYBODY takes ANY action that the game considers worth triggering the listener flag for
    #     (which is most things). Items will be given to the character currently being controlled.
    #     This may (will likely) cause encumbrance issues, potentially even during combat.
    scroll_tav: 0
    any_action_tav: 50

  add_act1a_treasure:
    # Adds 26 items into the pool.
    'false': 0
    'true': 50

  add_act1b_treasure:
    # Adds 62 items into the pool.
    'false': 0
    'true': 50

  add_act2_treasure:
    # Adds 103 items into the pool.
    'false': 50
    'true': 0

  add_act3_treasure:
    # Adds 191 items into the pool.
    'false': 50
    'true': 0

  trim_treasure_method:
    # The standard method of having 1:1 items:locations does not work for BG3. Each option instead lists how many locations or items they add.
    # Locations are filled with progression first, then useful, and if there is room left, filler.
    # If there are not enough locations for all of the useful items, they will be trimmed. This option determines how this trimming is done.
    # - Remove Later Treasure First: Removes treasure items that are found later in the game first. This is the recommended option for a more balanced playthrough.
    # - Remove Random Treasure: Removes treasure items at random.
    remove_later_treasure_first: 50
    remove_random_treasure: 0

  additional_level_ups:
    # For an easier play through, this adds items to support additional levels into the pool. Not recommended.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 10
    0: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-10: 0 # random value between 0 and 10

  traps_percentage:
    # What percent of filler items should be traps.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 100
    0: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-100: 0 # random value between 0 and 100

  enabled_traps:
    # Which kinds of traps should be enabled. Currently monster spawns do not scale to level.
    # Any trap not enabled by default is experimental and may be buggy.
    ['Bleeding', 'Monster', 'Stun']

  block_entrances:
    # If true, there will be barriers placed in the world that block advancement until a required item is received. This is currently in testing and may be buggy.
    'false': 50
    'true': 0

  ###########################
  # Item & Location Options #
  ###########################
  local_items:
    # Forces these items to be in their native world.
    []

  non_local_items:
    # Forces these items to be outside their native world.
    []

  start_inventory:
    # Start with the specified amount of these items. Example: "Bomb: 1"
    {}

  start_hints:
    # Start with these item's locations prefilled into the ``!hint`` command.
    []

  start_location_hints:
    # Start with these locations and their item prefilled into the ``!hint`` command.
    []

  exclude_locations:
    # Prevent these locations from having an important item.
    []

  priority_locations:
    # Prevent these locations from having an unimportant item.
    []

  item_links:
    # Share part of your item pool with other players.
    []

  plando_items:
    # Generic items plando.
    []
